package com.foreveross.dao;

import java.util.HashMap;
import java.util.List;

import com.foreveross.vo.Express;
import com.foreveross.vo.HouseAddress;
import com.foreveross.vo.HouseUser;
import com.foreveross.vo.Tenement;
import com.foreveross.vo.common.PageVo;

public interface HouseUserDAO {

	public <T extends Object> void save(T entity) throws Exception;

	public <T> void remove(T entity) throws Exception;

	public Object findById(Class clazz, String id) throws Exception;

	public Object findByIntId(Class clazz, int id) throws Exception;

	public <T extends Object> T updateObject(T t) throws Exception;

	public List<HouseUser> findHouseUserList(String name, String house_id,
			String telepnoe, String authentication_status, String type,
			int pageIndex, int pageSize,String userId) throws Exception;

	public long getHouseUserListCount(String name, String house_id,
			String telepnoe, String authentication_status, String type,String userId)
			throws Exception;

	public void deleteHouseUser(String houseUserid) throws Exception;

	public long getMyHouseUserListCount(String weixinId,String authenticationStatus) throws Exception;
	
	public List<HouseUser> getMyHouseUserList(String weixinId,String authenticationStatus,
			int pageIndex, int pageSize) throws Exception;
	
	public List<Tenement> getUserTenement(String weixinId) throws Exception;
	
	public String getWexinUserName(String weixinid) throws Exception;

	public List<HouseAddress> getHouseWYAddressList(String weixinId,String pageIndex, String pageSize)throws Exception;

	public HouseUser getHouseUser(String id) throws Exception;
	
	public void authentication(HouseUser houseUser) throws Exception;
	
	public String getTenement(String userid) throws Exception;

	public List<HouseUser> getHouseUserByweixinId(String weixinId)throws Exception;
	
	public List<HouseUser> getHouseUserByCusIdAndResId(String cusId,String resId)throws Exception;

	public List<HouseUser> getHouseUserList(String weixinId, String codeId,
			int pageIndex, int pageSize) throws Exception;

	public long getHouseUserListCount(String weixinId, String codeId) throws Exception;

}
